Оглавление

Проекты.

Создание.

Создание проекта выполняемого на ПК без загрузки в МК.

Структура.

Заголовочные фалы .h

Связать с недостающими исходниками.

Дерево заголовков - просмотр связей .h файлов.

Возможные проблемы.

Немотивированное затенение заголовочных файлов.

Доступ к типам HAL библиотек.

Операции.

Включение внешних исходников в свой проект.

Подключение исходников через ссылки.

Подключение внешних (по отношению к проекту) исходников.

Реорганизация папок - перенос файлов в другие папки.

Конвертация C > С++.

Добавление HAL процедур без использования CubeMX.

Импорт между родственными (основаны на eclipse) проектами

EWARM > Atollic/CubeIDE.

Использование центра импорта проектов.

Импорт из папки или архива.

AC6 > Atollic/CubeIDE.

Миграция c KEIL, IAR IDE.

KEIL uVision > Atollic.

IAR Embedded Workbench (EWARM) > Atollic.

Открытие и запуск примеров в приложениях к библиотекам CUBE.

Подключение чужого файла ссылающегося на дополнительные библиотеки.

DSP и SPL.

Подключение библиотек.

Как запустить пример из библиотеки DSP и SPL.

Принадлежность неизвестной функции.

Рабочая область (workspace).

Ярлык для конкретной папки рабочего пространства.

Перспективы и виды.

Снижение нагрузки на процессор за счет отключения лишних инструментов.

Перенос проекта и воркспейса в другие места.



Проекты.

Создание.

Создание проекта выполняемого на ПК без загрузки в МК.

Структура.

Заголовочные фалы .h

Связать с недостающими исходниками.

При изготовлении или реорганизации своего проекта среда не знает о существовании некоторых заголовочных и других файлов. Исправить это можено задав пути к файлам инклюдников и исходников к:..

инклюдникам .h

С/С++ Build - Settings - C Compiler - Directories = ../Users/Inc/modbus

исходникам .c

С/С++ General - Paths and Symbols - Source Location = добавить папку верхнего уровня

Дерево заголовков - просмотр связей .h файлов.

Инструмент для наглядного представления связей заголовочных .h файлов в виде дерева.

$Creating Links to External Files


Внешние файлы (вне папки проекта) интеграция.

Внешние файлы не переиндексируются. Чтобы заставить атолик следить за такими файлами, нужно добавить ссылку на файл, тогда физически он останется на прежнем месте, но будет показан в той папке куда мы укажем. Иконка будет отличатся от обычного файла. Файл работает как будто присутствует в проекте, индексируется. В частности #define #if сразу перерисовывается. Все это хорошо работает и удобно при интеграции нескольких проектов в один.

$Creating Links to External Files

Возможные проблемы.

Немотивированное затенение заголовочных файлов.

Причиной такого может быть запомненное в воркспейсе некое свойство, затеняющее хедер.

Проверить так ли это можно

Размышления.

Доступ к типам HAL библиотек.

Если напрямую подключить тот файл в котором сидит требуемый ресурс, компилятор вывалит кучу ошибок. В таких случаях нужно подключать самый общий заголовочный файл. Например, если нужны тип модуля RTC не нужно подключать #include "stm32l4xx_hal_rtc.h", нормально работает если подключить #include "stm32l4xx_hal.h"

Операции.

Включение внешних исходников в свой проект.

Несколько способов подключения.

Это требуется, например, когда в разных проектах нужно использовать одну и ту же общую папку

В конце любого из вариантов нужно

Пошаговый скрипт подключения.

Подключить папку.


Настроить связи.

Реорганизация папок - перенос файлов в другие папки.

Обобщение и перенос файлов name.c, .h в общую папку Common.

Конвертация C > С++.

Из С в С++ проект конвертация.

Пока не пробовал, но конечно хорошо, что это есть.

$Converting a C-Project to a C++-Project

Добавление HAL процедур без использования CubeMX.


Ошибка поиска по файлам в Atollic.


Импорт между родственными (основаны на eclipse) проектами

EWARM > Atollic/CubeIDE.

Одной из важных и местами даже работающих фич является конвертация из старых типов проктов, формата AC6 и EWARM. Все мы желаем чтобы такое происходило в пару кликов. При случае попытайте счастья прочитав главы IMPORTING AC6 PROJECTS и IMPORTING EWARM PROJECTS. Это работает но бубен и варган желательны в комплекте..

Использование центра импорта проектов.

Помни что файлы будут переписаны и затерты!

Импорт из папки или архива.

Правой мышью на поле

Import - Projects from Folder or Archive -

Далее выбираем папку или архив. Лучше архив, если есть такая возможность.


Если путь будет неверный, центр импорта попытается загрести все что может. Это может создать огромный долгий список.

При попытке вставить готовый путь в окно Browse for Folder происходит вышеназванная ситуация. Причиной могут быть лишние символы после последней папки

AC6 > Atollic/CubeIDE.

Import - Projects from Folder or Archive -

Далее выбираем папку или архив. Лучше архив, если есть такая возможность.

Миграция c KEIL, IAR IDE.

KEIL uVision > Atollic.

Получилось открыть обычным экспортом из архива. При этом A нашел несколько проектов и открыл их в ранее указанном воркспейсе.


Import – General – Project form Folder or Archive

IAR Embedded Workbench (EWARM) > Atollic.

Открытие и запуск примеров в приложениях к библиотекам CUBE.

На примере D:\PROJECTS\STM32CUBEExamples\STM32Cube_FW_F4_V1.24.0\Projects\STM32F4-Discovery\


Подключение чужого файла ссылающегося на дополнительные библиотеки.

Возможные стратегии.

DSP и SPL.

Подключение библиотек.

Это описано в stm_____xx_dsp_stdperiph_lib_um.chm


Peripheral initialization and configuration

.. надо бы вписать

Как запустить пример из библиотеки DSP и SPL.


Удалось успешно произвести эти действия предварительно создав проект так.

Принадлежность неизвестной функции.


Смена MCU.

Рабочая область (workspace).

На Atollic я переходил после Mplaba. В начале напрягало, что не все настройки живут в файле проекта, а есть еще какая то рабочая среда. Прояснить этот момент можно прочитав вводную часть про систему workspaces / projects. :

Исходя из этой «идеологии» становятся понятны причины такого:

  1. Из хорошего — не нужно добавлять явно файл в проект. Его автоматическое добавление происходит при добавлении файла в папку проекта. Это не касается сложных случаев в ссылками на файлы. Никто не отменяет необходимость подключения файлов через хедеры, но на одно движение все таки меньше — хоть что-то «делают за нас» ).


Сохранить настройки рабочей среды.

Хотел перетаскивать с проекта на проект визуальную и прочую конфигурацию окон, но не смог заставить работать сохранение – восстановление. Возможно вам повезет больше. Если заработает отпишитесь, плиз.

$Backup of Preferences for a Workspace

Ярлык для конкретной папки рабочего пространства.

Для этого есть ключ -data

пример

"C:\Program Files (x86)\Atollic\TrueSTUDIO for STM32 9.3.0\ide\TrueSTUDIO.exe" -data D:\PROJECTS\AtollicWrkPrj\ИмяФайлаTemp4

Перспективы и виды.

Снижение нагрузки на процессор за счет отключения лишних инструментов.

Снизить нагрузку на процессор ПК можно отключив показ некоторых видов, что логично — будет тратиться меньше ресурсов на отрисовку и подготовку данных. Не могу утверждать, что это сильно поможет, но лучше, чем ничего. Ждем отзывов от владельцев ветхих ПК.

@ Window, Preferences and in the Preference Dialog select General, Startup and Shutdown

$ Perspectives & Views.

Перенос проекта и воркспейса в другие места.

Фича на которую у меня были виды, так как хотелось бы настроить один воркспейс образцово показательно: горячие клавиши, отладчики и прочее. И затем быстро экспортировать все эти предпочтения в другие проекты, но... что-то пошло не так. На форуме ST не ответили ничего дельного.

@ Project Explorer - Import – General – Preferences

@ Project Explorer - Export – General – Preferences




v1.